<?php

/**
 * Description of HomepagePresenter
 *
 * @author Pavel Homolka
 */
use Nette\Application\UI\Form;
use Nette\Mail\Message;

class HomepagePresenter extends BasePresenter {

    /** @persistent */
    public $form = 'sign';
    private $category_default;

    /**
     * (non-phpDoc)
     *
     * @see Nette\Application\Presenter#startup()
     */
    protected function startup() {
	parent::startup();
	
    }
    
    public function actionContact($category){
	$this->category_default = $category;
    }


    protected function createComponentContactForm() {
	$form = new Form();

	$item = array(
	    'Zdravé hubnutí' => array(
		'personal_diatolog' => 'Osobní konzultace s dietologem',
		'welness_plan' => 'Individuální dietní a wellness plán',
		'welness_coplex' => 'Komplexní wellness program',
	    ),
	    'Vitalita a Anti-aging' => array(
		'vitalita' => 'Vitalita a Anti-aging'
	    ),
	    'Tělesná kondice' => array(
		'fitness_individial' => 'Individuální kondiční plán',
		'fitness_profi' => 'Profi kondiční plán',
	    ),
	    'Péče o tělo' => array(
		'refresh_body' => 'Omlazení pokožky obličeje, krku a dekoltu',
		'celulitida' => 'Ošetření celulitidy',
	    ),
	);

	$form->addText('firstName', 'Jméno:');

	$form->addText('secondName', 'Přijmení:')
		->addRule(Form::FILLED, 'Prosím vyplňte přijmení.');

	$form->addText('mail', 'E-mail:')
		->addRule(Form::FILLED, 'Prosím vyplňte e-mail.')
		->addRule(Form::EMAIL, 'E-mail není platný.');

	$form->addText('phone','Telefon:')
		->addRule(Form::FILLED, 'Prosím vyplňte telefon.')
		->addRule(Form::INTEGER, 'Telefon není platný.')
		->addRule(Form::MIN_LENGTH, 'Telefon není platný.', 9);

	$form->addSelect('category', 'Mám zájem o:', $item)
		->setPrompt('Mám zájem o')
		->setDefaultValue($this->category_default);
	
	$form->addTextArea('query', 'Místo pro Váš dotaz:');

	$form->addSubmit('send', 'ODESLAT');

	$form->onSuccess[] = callback($this, 'contactFormSubmitted');
	return $form;
    }

    public function contactFormSubmitted($form) {
	$values = $form->getValues();

	$mail = new Message;
	$mail->setFrom($values['mail'])
		->addTo('2Perfection <test@2perfection.cz>')
		->setSubject('Kontaktní formulář webu 2Perfection.cz')
		->setBody($values['query'] . "\n\n" . 'Jméno: ' . $values['firstName'] . "\n" . 'Přijmení: ' . $values['secondName'] . "\n" . 'Telefon: ' . $values['phone'])
		->send();

	$this->flashMessage('Formulář byl odeslán.');
    }

}